#ifndef __XML_DRIVER_H_
#define __XML_DRIVER_H_
#include <stdio.h>
#include <stdbool.h>
#include <libxml/encoding.h>
#include <libxml/xmlwriter.h>
#include <libxml/parser.h>
//#if __WORDSIZE != 32
void *xml_driver__software_init(int argc, char **argv);
void xml_driver__software_to_xmlfile(void *sft);
void xml_driver__points_of_interfaces_set_update(void *p, bool status);
char *xml_driver__softwares_to_str(void *sft);
void *xml_driver__softwares_to_node(void *sft);
char *xml_driver__get_xml_driver__file(const char *name);
void xml_driver__softwares_to_file_deep(void *sft, const char *filename);
void *xml_driver__file_to_softwares(const char *filename);

void *xml_driver__file_to_object(const char *filename);
void *xml_driver__object_to_node(void *obj);
void *xml_driver__objects_to_node(void *obj);
void *xml_driver__node_to_object(void *node, void *obj);
void *xml_driver__node_to_objects(void *node);
char *xml_driver__node_to_str(void *node);
char *xml_driver__node_to_str_no_free(void *node);
void *xml_driver__xml_file_to_object(const char *name);
void *xml_driver__content_to_object(const char *content, void *object);
char *xml_driver__copy_node_to_str(void *node);
void *xml_driver__filtrate_by_update(void *node);
xmlNodePtr xmldriver__getRootNode(xmlNodePtr node);
#endif //__XML_DRIVER_H_
